﻿namespace D.AT.Dto
{

    public class SpcHttpCheckResponseDto
    {
        public string errorCode { get; set; }
        public string errorMessage { get; set; }
        public string reasonCode { get; set; }
    }
    public class SpcCheckResponseDto
    {
        public Value value { get; set; }
    }

    public class ChamberHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class ChamberRecipeHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class EquipmentAndRecipeHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class EquipmentHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class LotHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class OperationAndEquipmentHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class ProcessAndEquipmentHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class ProcessHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class RecipeHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class ReticleHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class ReturnCodesItem
    {
        /// <summary>
        /// 
        /// </summary>
        public string description { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string returnCodeStatus { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string rule { get; set; }
    }

    public class RouteHoldAction
    {
        /// <summary>
        /// 
        /// </summary>
        public string holdAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> triggerRules { get; set; }
    }

    public class SiInfo
    {
    }

    public class ChartResultsItem
    {
        /// <summary>
        /// 
        /// </summary>
        public ChamberHoldAction chamberHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string chamberID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public ChamberRecipeHoldAction chamberRecipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string chartGroupID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string chartID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string chartOwnerMailAddress { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string chartRC { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> chartSubOwnerMailAddresses { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string chartType { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public EquipmentAndRecipeHoldAction equipmentAndRecipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public EquipmentHoldAction equipmentHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string inputTimestamp { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public LotHoldAction lotHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public OperationAndEquipmentHoldAction operationAndEquipmentHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public ProcessAndEquipmentHoldAction processAndEquipmentHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public ProcessHoldAction processHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string processTimestamp { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public RecipeHoldAction recipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public ReticleHoldAction reticleHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<ReturnCodesItem> returnCodes { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public RouteHoldAction routeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public SiInfo siInfo { get; set; }
    }

    public class ItemResultsItem
    {
        /// <summary>
        /// 
        /// </summary>
        public List<ChartResultsItem> chartResults { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string dataItemName { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public SiInfo siInfo { get; set; }
    }

    public class LotID
    {
        /// <summary>
        /// 
        /// </summary>
        public string identifier { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string stringifiedObjectReference { get; set; }
    }

    public class Value
    {
        /// <summary>
        /// 
        /// </summary>
        public string bankID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string bankMoveAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> chamberHoldActions { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptChamberHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptChamberRecipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptOpeNoHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptProcessHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptProductRecipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptRecipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string eqptReticleHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string equipmentHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<ItemResultsItem> itemResults { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string lotHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public LotID lotID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string lotRC { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string mailSendAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string moduleHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string ocapNo { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string otherAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string processHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string productHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string recipeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string reticleGroupHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string reticleHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string reworkBranchAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string reworkRouteID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string routeHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string routeOpeNoHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string routeOpeNoProductHoldAction { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public SiInfo siInfo { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string txRC { get; set; }
    }
}
